// Copyright © 2024 The Things Network Foundation, The Things Industries B.V.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

import inquirer from 'inquirer'

import generateReduxFiles from './generate-store-logic.js'

const mainMenu = async () => {
  const { toolChoice } = await inquirer.prompt([
    {
      type: 'list',
      name: 'toolChoice',
      message: 'Select a tool to run:',
      choices: [{ name: 'Generate Redux Files', value: 'redux' }],
    },
  ])

  switch (toolChoice) {
    case 'redux':
      await generateReduxFiles()
      break
    default:
      console.log('No valid option selected.')
  }
}

mainMenu().catch(err => console.error('Error running the selected tool:', err))
